package entities;

import java.io.Serializable;
import java.util.List;

import javax.persistence.*;

@Entity
@Table(name="cursos")
public class Curso implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	@Id
	@Column(name="codigoC")
	private String codigo;
	@OneToOne(cascade=CascadeType.ALL)
	@JoinColumn(name="codigoM")
	private Materia materia;
	@ManyToOne(cascade=CascadeType.ALL)
	@JoinColumn(name="clave")
	private Profesor profesor;
	@ManyToMany
	@JoinTable(name="alumno_curso",
			joinColumns=@JoinColumn(name="codigoC"),
			inverseJoinColumns=@JoinColumn(name="clave")
			)
	private List<Alumno> alumnos;
	
	public String getCodigo() {
		return codigo;
	}
	public void setCodigo(String codigo) {
		this.codigo = codigo;
	}
	public Materia getMateria() {
		return materia;
	}
	public void setMateria(Materia materia) {
		this.materia = materia;
	}
	public Profesor getProfesor() {
		return profesor;
	}
	public void setProfesor(Profesor profesor) {
		this.profesor = profesor;
	}
	public List<Alumno> getAlumnos() {
		return alumnos;
	}
	public void setAlumno(Alumno alumno) {
		this.alumnos.add(alumno);
	}
	
	
}
